package org.wheel.jpa.demo.repositories;

import java.util.List;
import java.util.Map;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.wheel.jpa.demo.domain.SysTest;
import org.wheel.jpa.repository.BaseRepository;

/**
 * @author klaus.wang
 */
public interface SysTestRepository extends BaseRepository<SysTest, String> {

	List<SysTest> findByName(String name);

	Page<Map<String, Object>> getWithEntity(String name, Pageable pageable);
	
	Page<SysTest> getWith(String nameLike, Pageable pageable);

	Page<SysTest> getWithObjParameter(Map<String, Object> params, Pageable pageable);

	Page<SysTest> getWithSysTestParameter(SysTest test, Pageable pageable);

	Page<SysTest> testWithHQL(SysTest test, PageRequest of);

}
